import { NextRequest, NextResponse } from 'next/server'

/**
 * @swagger
 * /api/config:
 *   get:
 *     summary: 获取客户端配置
 *     description: 获取客户端所需的安全配置信息
 *     tags:
 *       - 系统配置
 *     responses:
 *       200:
 *         description: 成功获取配置信息
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 baseURL:
 *                   type: string
 *                   description: OpenAI API 基础 URL
 *                   example: "https://api.openai.com/v1"
 *                 timeout:
 *                   type: number
 *                   description: 请求超时时间（毫秒）
 *                   example: 30000
 *                 maxRetries:
 *                   type: number
 *                   description: 最大重试次数
 *                   example: 2
 *       500:
 *         description: 服务器内部错误
 *         content:
 *           application/json:
 *             schema:
 *               type: object
 *               properties:
 *                 error:
 *                   type: string
 *                   example: "Failed to get configuration"
 */

export async function GET(req: NextRequest) {
  try {
    // 只返回客户端需要的、安全的配置信息
    const config = {
      baseURL: process.env.OPENAI_BASE_URL || 'https://api.openai.com/v1',
      // 注意：永远不要在客户端暴露API密钥
      // apiKey: process.env.OPENAI_API_KEY, // 绝对不要这样做！
      timeout: 30000,
      maxRetries: 2,
    }

    return NextResponse.json(config)
  } catch (error) {
    console.error('Config API error:', error)
    return NextResponse.json(
      { error: 'Failed to get configuration' },
      { status: 500 }
    )
  }
}
